import { parseTime } from '@/utils/ruoyi'
import marked from 'marked'
import hljs from 'highlight.js'

// 配置marked选项
marked.setOptions({
  highlight: function(code, lang) {
    if (lang && hljs.getLanguage(lang)) {
      try {
        return hljs.highlight(lang, code).value
      } catch (__) {}
    }
    return hljs.highlightAuto(code).value
  },
  breaks: true,
  gfm: true
})

// 格式化消息内容
export function formatMessage(content) {
  if (!content) return ''
  return marked(content)
}

// 格式化会话时间
export function formatSessionTime(time) {
  return parseTime(time)
}

// 获取消息发送者显示名称
export function getSenderName(role) {
  const roleMap = {
    user: '用户',
    assistant: 'AI助手',
    system: '系统'
  }
  return roleMap[role] || role
}

// 处理会话主题显示
export function formatSessionTopic(topic, maxLength = 20) {
  if (!topic) return '未命名会话'
  return topic.length > maxLength ? topic.substring(0, maxLength) + '...' : topic
} 